// samsting : this file is auto create.

#include "Rds_Region/2014-08-15/DescribeDatabasesResponse.h"

namespace aliyun { namespace Rds_Region {

DescribeDatabasesResponse::DescribeDatabasesResponse() {
}

const string& DescribeDatabasesResponse::Database::AccountPrivilegeInfo::GetAccount(void) const {
  return Account_;
}

const string& DescribeDatabasesResponse::Database::AccountPrivilegeInfo::GetAccountPrivilege(void) const {
  return AccountPrivilege_;
}

const std::vector<DescribeDatabasesResponse::Database::AccountPrivilegeInfo>& DescribeDatabasesResponse::Database::GetAccounts(void) const {
  return Accounts_;
}

const string& DescribeDatabasesResponse::Database::GetDBName(void) const {
  return DBName_;
}

const string& DescribeDatabasesResponse::Database::GetDBInstanceId(void) const {
  return DBInstanceId_;
}

const string& DescribeDatabasesResponse::Database::GetEngine(void) const {
  return Engine_;
}

const string& DescribeDatabasesResponse::Database::GetDBStatus(void) const {
  return DBStatus_;
}

const string& DescribeDatabasesResponse::Database::GetCharacterSetName(void) const {
  return CharacterSetName_;
}

const string& DescribeDatabasesResponse::Database::GetDBDescription(void) const {
  return DBDescription_;
}

const std::vector<DescribeDatabasesResponse::Database>& DescribeDatabasesResponse::GetDatabases(void) const {
  return Databases_;
}

const char* DescribeDatabasesResponse::BaseKey(void) {
  return "DescribeDatabasesResponse";
}

void DescribeDatabasesResponse::UnmarshallerMap(std::map<string, string>& response_map) {
  int Databases__length = 0;
  UnmarshallerInt(Databases__length, response_map, "DescribeDatabasesResponse.Databases.Length");
  if(Databases__length >= 0) {
    Databases_.resize(Databases__length);
    for(int i1 = 0; i1 < Databases__length; i1++) {
      int Databases_i1_Accounts__length = 0;
      UnmarshallerInt(Databases_i1_Accounts__length, response_map, "DescribeDatabasesResponse.Databases[+"+string_ValueOfInt(i1)+"].Accounts.Length");
      if(Databases_i1_Accounts__length >= 0) {
        Databases_[i1].Accounts_.resize(Databases_i1_Accounts__length);
        for(int i2 = 0; i2 < Databases_i1_Accounts__length; i2++) {
          UnmarshallerString(Databases_[i1].Accounts_[i2].Account_, response_map, "DescribeDatabasesResponse.Databases[+"+string_ValueOfInt(i1)+"].Accounts["+string_ValueOfInt(i2)+"].Account");
          UnmarshallerString(Databases_[i1].Accounts_[i2].AccountPrivilege_, response_map, "DescribeDatabasesResponse.Databases[+"+string_ValueOfInt(i1)+"].Accounts["+string_ValueOfInt(i2)+"].AccountPrivilege");
        } // for(int i2 = 0; i2 < Databases_i1_Accounts__length; i2++) {
      } // if(Databases_i1_Accounts__length >= 0) {

      UnmarshallerString(Databases_[i1].DBName_, response_map, "DescribeDatabasesResponse.Databases["+string_ValueOfInt(i1)+"].DBName");
      UnmarshallerString(Databases_[i1].DBInstanceId_, response_map, "DescribeDatabasesResponse.Databases["+string_ValueOfInt(i1)+"].DBInstanceId");
      UnmarshallerString(Databases_[i1].Engine_, response_map, "DescribeDatabasesResponse.Databases["+string_ValueOfInt(i1)+"].Engine");
      UnmarshallerString(Databases_[i1].DBStatus_, response_map, "DescribeDatabasesResponse.Databases["+string_ValueOfInt(i1)+"].DBStatus");
      UnmarshallerString(Databases_[i1].CharacterSetName_, response_map, "DescribeDatabasesResponse.Databases["+string_ValueOfInt(i1)+"].CharacterSetName");
      UnmarshallerString(Databases_[i1].DBDescription_, response_map, "DescribeDatabasesResponse.Databases["+string_ValueOfInt(i1)+"].DBDescription");
    } // for(int i1 = 0; i1 < Databases__length; i1++) {
  } // if(Databases__length >= 0) {

}


} } // namespace aliyun { namespace Rds_Region {

// end of file 
